package se.webbzon.boltzmann.game.sequence.builder;

import se.webbzon.boltzmann.factory.AbstractFactory;

public abstract class AbstractSequenceRowInflator extends AbstractFactory<String,AbstractSequenceRow,SequenceRowInflatorBody> {

	// The key to this abstract sequence row inflator
	private final String key;
	
	/*============================================================
	Constructors
	============================================================*/
	
	/** Creates a new abstract sequence row inflator. **/
	public AbstractSequenceRowInflator(String factoryName) {
		key = factoryName;
	}
	
	/*============================================================
	Public Methods
	============================================================*/
	
	/** Creates a new sequence row deflation. **/
	public abstract SequenceRowDeflation makeDeflation();
	
	/** Returns the name of the sequence row inflator. **/
	public String getFactoryName() {
		return key;
	}
	
	@Override public String getKey() {
		return key;
	}

}
